package com.cloud.easy.im.event;

import com.cloud.easy.im.argeement.Agreement;
import com.cloud.easy.im.handler.qos.QoS4SendDaemonRoot;

import java.util.ArrayList;

/**
 * @author wangjian
 * @version 0.1.0
 * @create 2020年10月10日6:49 下午
 */
public interface MessageQoSEventListenerS2C {

    /**
     * 因为超过最大qos尝试次数，而被丢弃的消息。
     * <p>
     *     此消息通过使用框架时设置的最大尝试qos次数{@link QoS4SendDaemonRoot#QOS_TRY_COUNT}控制，超过最大次数后，将由系统自行维护后续消息
     * </p>
     * @param lostMessages
     */
    void messagesLost(ArrayList<Agreement> lostMessages);

    /**
     * 服务端收到客户端返回的ack应答包后回调函数
     * @param theFingerPrint
     */
    void messagesBeReceived(String theFingerPrint);

}
